#include "threadPool.h"
///////////////////////////////////////////////////////////////////////////////////////////////////////////// 集合结构体
// 初始化集合
int set_init(Set * set) {
    set = (Set*)malloc(sizeof(Set));
    set->set_index=0;
    for(int i=0;i<10;i++)set->elements[i]=0;
    return 0;
}
// 检查元素是否存在
int set_contains(const Set* set, int element) {//存在返回0不存在返回-1
    for (int i = 0; i < set->set_index; i++) {
        if (set->elements[i] == element) {
            return 0;
        }
    }
    return -1;
}
// 添加元素（如不存在）
int set_add(Set* set, int element) {
    if (set_contains(set, element)==0) 
    {
        printf("元素已经在集合中\n");
        return -1;
    }
    set->elements[set->set_index] = element;
    set->set_index++;
    printf("添加元素成功\n");
    return 0;
}
// 删除元素（如存在）
int set_remove(Set* set, int element) {
    for (int i = 0; i < set->set_index; i++) {
        if (set->elements[i] == element) {
            // 用最后一个元素覆盖当前元素
            set->elements[i] = set->elements[set->set_index - 1];
            set->set_index--;
            printf("删除元素成功\n");
            return 0;
        }
    }//for结束
    printf("集合中没有这个元素\n");
    return -1;
}
// 打印集合
void set_print(const Set* set) {
    printf("{ ");
    for (int i = 0; i < set->set_index; i++) {
        printf("%d,", set->elements[i]);
    }
    printf(" }\n");
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////







